#

| Chapter 4 The Bourne Shell and Korn Shell |

## for

    for x [in list]
    do
         commands
    done

For variable `x` (in optional `list` of values) do `commands`. If `list` is omitted, "$@" (positional parameters) is assumed.

### Examples

Paginate files specified on the command line; save each result:

>     for file do
>          pr $file > $file.tmp
>     done

Search chapters for a list of words (like fgrep -f):

>     for item in `cat program_list`
>     do
>          echo "Checking chapters for"
>          echo "references to program $item..."
>          grep -c "$item.[co]" chap*
>     done

Extract a one-word title from each file and use as new filename:

>     for file do
>          name=`sed -n 's/NAME: //p' $file`
>          mv $file $name
>     done

Reference: fi |  | Reference: function